package com.eam.asset.file.domain;

import java.math.BigDecimal;
import java.util.Date;

import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.eam.common.annotation.Excel;
import com.eam.common.core.domain.BaseEntity;

/**
 * 土地资产档案对象 asset_land
 *
 * @author tzf
 * @date 2023-10-31
 */
public class AssetLand extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 土地资产id
     */
    @TableId
    private String landId;

    /**
     * 资产名称
     */
    @Excel(name = "资产名称")
    private String landName;

    /**
     * 资产地址
     */
    @Excel(name = "资产地址")
    private String landPosition;

    /**
     * 资产来源
     */
    @Excel(name = "资产来源")
    private String landSource;

    /**
     * 性质
     */
    @Excel(name = "性质")
    private String landNature;

    /**
     * 状况
     */
    @Excel(name = "状况")
    private String landStatus;

    /**
     * 数量
     */
    @Excel(name = "数量")
    private Long landNumber;

    /**
     * 获取时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "获取时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date landGetDate;

    /**
     * 占地面积
     */
    @Excel(name = "占地面积")
    private BigDecimal landArea;

    /**
     * 产权人
     */
    @Excel(name = "产权人")
    private String landOwner;

    /**
     * 资产产权号
     */
    @Excel(name = "资产产权号")
    private String landWarrant;

    /**
     * 类别
     */
    @Excel(name = "类别")
    private String landCategory;

    /**
     * 经度
     */
    @Excel(name = "经度")
    private String lon;

    /**
     * 纬度
     */
    @Excel(name = "纬度")
    private String lat;

    /**
     * 上级id
     */
    @Excel(name = "上级id")
    private Long parentId;

    /**
     * 下级id
     */
    @Excel(name = "下级id")
    private Long sonId;

    /**
     * 土地图片
     */
    @Excel(name = "土地图片")
    private String landImg;

    /**
     * 处置类别
     */
    @Excel(name = "处置类别")
    private String landManage;

    /**
     * 档案编码
     */
    @Excel(name = "档案编码")
    private String landCode;

    /**
     * 资产产权图片
     */
    @Excel(name = "资产产权图片")
    private String landWarrantImg;
    @TableLogic
    private Integer status;

    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }
    public String getLandId() {
        return landId;
    }

    public void setLandId(String landId) {
        this.landId = landId;
    }

    public void setLandName(String landName) {
        this.landName = landName;
    }

    public String getLandName() {
        return landName;
    }

    public void setLandPosition(String landPosition) {
        this.landPosition = landPosition;
    }

    public String getLandPosition() {
        return landPosition;
    }

    public void setLandSource(String landSource) {
        this.landSource = landSource;
    }

    public String getLandSource() {
        return landSource;
    }

    public void setLandNature(String landNature) {
        this.landNature = landNature;
    }

    public String getLandNature() {
        return landNature;
    }

    public void setLandStatus(String landStatus) {
        this.landStatus = landStatus;
    }

    public String getLandStatus() {
        return landStatus;
    }

    public void setLandNumber(Long landNumber) {
        this.landNumber = landNumber;
    }

    public Long getLandNumber() {
        return landNumber;
    }

    public void setLandGetDate(Date landGetDate) {
        this.landGetDate = landGetDate;
    }

    public Date getLandGetDate() {
        return landGetDate;
    }

    public void setLandArea(BigDecimal landArea) {
        this.landArea = landArea;
    }

    public BigDecimal getLandArea() {
        return landArea;
    }

    public void setLandOwner(String landOwner) {
        this.landOwner = landOwner;
    }

    public String getLandOwner() {
        return landOwner;
    }

    public void setLandWarrant(String landWarrant) {
        this.landWarrant = landWarrant;
    }

    public String getLandWarrant() {
        return landWarrant;
    }

    public void setLandCategory(String landCategory) {
        this.landCategory = landCategory;
    }

    public String getLandCategory() {
        return landCategory;
    }

    public void setLon(String lon) {
        this.lon = lon;
    }

    public String getLon() {
        return lon;
    }

    public void setLat(String lat) {
        this.lat = lat;
    }

    public String getLat() {
        return lat;
    }

    public void setParentId(Long parentId) {
        this.parentId = parentId;
    }

    public Long getParentId() {
        return parentId;
    }

    public void setSonId(Long sonId) {
        this.sonId = sonId;
    }

    public Long getSonId() {
        return sonId;
    }

    public void setLandImg(String landImg) {
        this.landImg = landImg;
    }

    public String getLandImg() {
        return landImg;
    }

    public void setLandManage(String landManage) {
        this.landManage = landManage;
    }

    public String getLandManage() {
        return landManage;
    }

    public void setLandCode(String landCode) {
        this.landCode = landCode;
    }

    public String getLandCode() {
        return landCode;
    }

    public void setLandWarrantImg(String landWarrantImg) {
        this.landWarrantImg = landWarrantImg;
    }

    public String getLandWarrantImg() {
        return landWarrantImg;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("landId", getLandId())
                .append("landName", getLandName())
                .append("landPosition", getLandPosition())
                .append("landSource", getLandSource())
                .append("landNature", getLandNature())
                .append("landStatus", getLandStatus())
                .append("landNumber", getLandNumber())
                .append("landGetDate", getLandGetDate())
                .append("landArea", getLandArea())
                .append("landOwner", getLandOwner())
                .append("landWarrant", getLandWarrant())
                .append("landCategory", getLandCategory())
                .append("lon", getLon())
                .append("lat", getLat())
                .append("parentId", getParentId())
                .append("sonId", getSonId())
                .append("landImg", getLandImg())
                .append("landManage", getLandManage())
                .append("landCode", getLandCode())
                .append("landWarrantImg", getLandWarrantImg())
                .append("remark", getRemark())
                .append("createTime", getCreateTime())
                .append("createBy", getCreateBy())
                .append("updateTime", getUpdateTime())
                .append("updateBy", getUpdateBy())
                .toString();
    }
}
